Method of providing service for user search, and apparatus, server, and system for the same

ABSTRACT

A service provision method is provided for user search, and an apparatus, a server, and a system for the same. A service provision method includes transmitting a terminal search request message including a contents information element to a service provision server, receiving positional information of a terminal, which is playing first contents related to the contents information element, from the service provision server, and displaying the received positional information.

CROSS REFERENCE TO RELATED APPLICATIONS

This is a continuation application of U.S. patent application Ser. No.14/308,203 filed on Jun. 18, 2014, in the U.S. Patent and TrademarkOffice, which is a continuation application of U.S. patent applicationSer. No. 11/743,887 filed on May 3, 2007, now U.S. Pat. No. 8,788,588,which claims the benefit of U.S. Provisional Patent Application No.60/796,870 filed on May 3, 2006, in the U.S. Patent and TrademarkOffice, which claims priority from Korean Patent Application No.10-2007-0026064 filed on Mar. 16, 2007, in the Korean IntellectualProperty Office, the disclosures of which are incorporated herein byreference in their entireties.

BACKGROUND OF THE INVENTION

1. Field of the Invention

Methods, apparatuses and systems consistent with the present inventionrelate to a service for user search, and in particular, to providing aservice that searches users having similar taste in use of contents.

2. Description of the Related Art

With the development of digital technology, demands for various kinds ofdigital contents, such as music, movies, and games, are increasing. Auser may make contact with people having similar tastes in order tosearch and use contents according to his/her taste and to exchange otherkinds of information. For example, the user may join a club on a Website so as to share various kinds and a large amount of information.

However, in the related art, in order for the user to obtain informationrelated to the contents, which is being played, from another user, theuser needs to upload an inquiry about the contents to the Web site orrequest to chat with other users, who are currently connected to the Website, through IMs (Instant Messages). That is, in the related art,real-time information exchange is rarely performed.

In recent years, there are many users who store tens or hundreds ofcontents in a portable terminal, such as a cellular phone or a PMP(Portable Multimedia Player) and play desired contents without regard totime constraint or specific locations. The user who is using such aportable terminal rarely exchanges information with a user havingsimilar taste in real time. Accordingly, there is an unmet need for atechnology that allows a user to exchange information related tocontents, which the user is using, with other users having similar tastein real time.

SUMMARY OF THE INVENTION

The present invention provides a service that searches users, who usesimilar contents, in real time, and allows information exchange with thesearched users.

According to an aspect of the present invention, there is provided aservice provision method, the service provision method includingtransmitting a terminal search request message including a contentsinformation component to a service provision server, receivingpositional information of a terminal, which is playing first contentsrelated to the contents information element, from the service provisionserver, and displaying the received positional information.

According to another aspect of the present invention, there is provideda service provision method, the service provision method includingreceiving a terminal search request message from a first terminal,collecting positional information of a second terminal, which is playingcontents related to a contents information element included in thereceived terminal search request message, and transmitting the collectedpositional information to the first terminal.

According to still another aspect of the present invention, there isprovided a digital device, the digital device including a control unitgenerating a terminal search request message including a contentsinformation element, a network interface unit transmitting the generatedterminal search request message to a service provision server andreceiving positional information of a terminal, which is playing firstcontents related to the contents information element, from the serviceprovision server, and a display unit displaying the received positionalinformation.

According to yet still another aspect of the present invention, aservice provision server, the service provision server including apositional information management device collecting positionalinformation of a second terminal, which is playing contents related to acontents information element included in a terminal search requestmessage, and a service processing device receiving the terminal searchrequest message from a first terminal and transmitting the collectedpositional information to the first terminal.

According to yet still another aspect of the present invention, there isprovided a service provision system, the service provision systemincluding a first service provision server, when a terminal searchrequest message is received from a first terminal, collecting positionalinformation of a second terminal, which is playing contents related to acontents information element included in the terminal search requestmessage in a first local area, and transmitting the contents informationelement to a relay server, a second service provision server collectingpositional information of a third terminal, which is playing contentsrelated to the contents information element in a second local area, andthe relay server transmitting the contents information elementtransmitted from the first service provision server to the secondservice provision server and transmitting the positional information ofthe third terminal collected by the second service provision server tothe first service provision server. The first service provision servertransmits the positional information of the second terminal and thepositional information of the third terminal to the first terminal.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects and features of the present invention willbecome more apparent by describing in detail exemplary embodimentsthereof with reference to the attached drawings in which:

FIG. 1 is a diagram showing a service system according to an exemplaryembodiment of the present invention;

FIG. 2 is a flowchart showing a contents provision process according toan exemplary embodiment of the present invention;

FIG. 3 is a flowchart showing a service management process according toan exemplary embodiment of the present invention;

FIG. 4A is a diagram showing a state where a terminal is playing moviecontents according to an exemplary embodiment of the present invention;

FIG. 4B is a diagram showing a metadata type selection screen accordingto an exemplary embodiment of the present invention;

FIG. 5 is a flowchart showing a positional information collectionprocess according to an exemplary embodiment of the present inventionpositional information;

FIG. 6 is a flowchart showing a positional information collectionprocess according to another exemplary embodiment of the presentinvention;

FIG. 7 is a diagram showing a state where a terminal according to anexemplary embodiment of the present invention is displaying positionalinformation;

FIG. 8 is a flowchart showing a communication service use processbetween terminals according to an exemplary embodiment of the presentinvention;

FIG. 9 is a diagram showing an IM service use screen according to anexemplary embodiment of the present invention;

FIG. 10 is a diagram showing a service system according to an exemplaryembodiment of the present invention;

FIG. 11 is a flowchart showing a service provision process according toan exemplary embodiment of the present invention;

FIG. 12A is a diagram showing a state where a terminal is playing moviecontents according to an exemplary embodiment of the present invention;

FIG. 12B is a diagram showing a search area selection screen accordingto an exemplary embodiment of the present invention;

FIG. 13A is a diagram showing a state where a terminal according to anexemplary embodiment of the present invention is displaying positionalinformation;

FIG. 13B is a diagram showing a state where a terminal according toanother exemplary embodiment of the present invention is displayingpositional information;

FIG. 14 is a diagram showing the configuration of a service provisionserver 1400 according to an exemplary embodiment of the presentinvention;

FIG. 15 is a diagram showing the configuration of a relay server 1040according to an exemplary embodiment of the present invention; and

FIG. 16 is a diagram showing the configuration of a terminal 1600according to an exemplary embodiment of the present invention.

DESCRIPTION OF THE EXEMPLARY EMBODIMENTS

Aspects and features of the present invention and methods ofaccomplishing the same may be understood more readily by reference tothe following detailed description of exemplary embodiments and theaccompanying drawings. The present invention may, however, be embodiedin many different forms and should not be construed as being limited tothe exemplary embodiments set forth herein. Rather, these exemplaryembodiments are provided so that this disclosure will be thorough andcomplete and will fully convey the concept of the invention to thoseskilled in the art, and the present invention will only be defined bythe appended claims. Like reference numerals refer to like elementsthroughout the specification.

Hereinafter, exemplary embodiments of the present invention will bedescribed with reference to the accompanying drawings.

FIG. 1 is a diagram showing a service system according to an exemplaryembodiment of the present invention. In FIG. 1, three terminals 112,114, and 116 are shown, but this is just an example, and other numbersof terminals as would be understood by those skilled in the art may beenvisioned. Further, the individual terminals 112, 114, and 116 can bethe same or have similar functions. Accordingly, a description for aspecified terminal can be applied to other terminals. However, users ofthe individual terminals 112, 114, and 116 are different. Hereinafter,for convenience of explanation, the users of the individual terminals112, 114, and 116 are referred to as “user A”, “user B”, and “user C”,respectively.

In FIG. 1, a network 10 may be wired, wireless, or a combinationthereof. The network 10 is a communication path between the terminal 112and a service provision server 120. The network 10 may include a relaystation (for example, a base station or an AP (Access Point)) thatrelays communication between the terminal 112 and the service provisionserver 120.

The terminal 112 can perform communication with the service provisionserver 120 through the network 10. In order to communicate with theservice provision server 120, the terminal 112 can use a communicationprotocol based on, for example but not by way of limitation, CodeDivision Multiple Access (CDMA), Wideband Code Division Multiple Access(WCDMA), or Global System for Mobile communication (GSM). For example,the terminal 112 may use a communication protocol based on the IEEE802.11 standard or the IEEE 802.15.3 standard or other types ofprotocols.

The terminal 112 can play contents that includes a digital objectincluding at least one of video information, audio information, and textinformation. Specific examples of the contents include movies, music,photographs, Java games, electronic books, and various digitalbroadcasting (Digital Multimedia Broadcasting (DMB), Digital VideoBroadcasting (DVB), and Digital Audio Broadcasting (DAB)). According toan exemplary embodiment of the present invention, the terminal 112 canoperate one of a streaming mode and a general mode to play the contents.

In the streaming mode, the terminal 112 can receive the contents fromthe service provision server 120 in a streaming method. In this case,the terminal 112 can play the contents while buffering by an amount. Inthe general mode, the terminal 112 can play contents stored therein orcontents stored in a storage medium connected thereto. The contentsstored in the terminal 112 or the contents stored in the storage mediumconnected to the terminal 112 may be downloaded from the serviceprovision server 120 or acquired through a different path.

The terminal 112 may be a portable digital device, such as a cellularphone, a Personal Digital Assistant (PDA), or a notebook computer, butis not limited thereto. Alternatively, the terminal 112 may be a fixeddigital device, such as a set-top box, a desktop computer, or a digitalTV.

The service provision server 120 can provide contents and metadata ofthe contents to the terminal 112. The metadata includes one or morecontents information elements representing the features of the contents.The kinds of contents information elements can vary according to thetypes of contents. For example, if the type of contents is music, themetadata of the contents can include contents information elements, suchas genre, artist, album, and melody. If the type of contents is a movie,the metadata can include contents information elements, such as genre,leading actor, and director. If the type of contents is digitalbroadcasting, the metadata can include contents information elements,such as channel and program.

The metadata can be constructed as a separate data object from thecontents. However, the metadata may also be included in the contents,such that the metadata and the contents are constructed as a single dataobject.

Meanwhile, the service provision server 120 can search a terminal, whichis playing contents related to a specified contents information element,among other terminals 114 and 116 according to the request of theterminal 112 and can provide positional information of the searchedterminal to the terminal 112.

To receive a service from the service provision server 120, the terminal112 needs to be connected to the service provision server 120. Theconnection of the terminal 112 to the service provision server 120 canmean that a communication channel is established therebetween to allowthe terminal 112 to transmit a message to request a service to theservice provision server 120 and allow the service provision server 120to provide a service according to the request of the terminal 112.

The service provision server 120 may perform an authenticationprocessing to permit or reject the connection of the terminal 112. Tothis end, the service provision server 120 can compare authenticationinformation to be transmitted from the terminal 112 with previousregistration information. For example, the user A can register his/herID and password in the service provision server 120 using the terminal112 in advance. Thereafter, the terminal 112 that is to be connected tothe service provision server 120 according to the request of the user Atransmits the ID and password of the user A to the service provisionserver 120, and the service provision server 120 compares the ID andpassword of the user A received from the terminal 112 with thepreviously registered ID and password, so as to decide whether to permitthe connection of the terminal 112. This authentication system can beunderstood in the similar manner to a log-in system or a sign-in system.As an example, the service provision server 120 may perform theauthentication processing based on a different authentication system.

Hereinafter, a service provision process according to an exemplaryembodiment of the present invention will be described in detail. In thefollowing embodiments, it is assumed that the terminals 112, 114, and116 are connected to the service provision server 120 (for example, theservice provision server 120 has permitted the connection of theterminals 112, 114, and 116). FIG. 2 is a flowchart showing a contentsprovision process according to an exemplary embodiment of the presentinvention.

The user A who wants to receive contents from the service provisionserver 120 inputs a contents search request to the terminal 112 togetherwith a keyword to be used to search contents (hereinafter, referred toas “search keyword”). If the contents search request is input from theuser A (Operation S210), the terminal 112 generates contents searchrequest message including the input keyword (Operation S215) andtransmits the generated contents search request message to the serviceprovision server 120 (Operation S220). The contents search requestmessage may include a plurality of search keywords, but is not limitedthereto.

The service provision server 120 extracts the search keyword from thecontents search request message received from the terminal 112(Operation S225) and searches contents related to the extracted searchkeyword (Operation S230). For example, if the search keyword is the nameof a singer, the service provision server 120 can search music contentsof the corresponding singer.

If a plurality of search keywords are extracted from the contents searchrequest message, the service provision server 120 can search contentsrelated to the plurality of search keywords.

If the search processing at Operation S230 is completed, the serviceprovision server 120 generates a list of contents, which are found asthe search result (Operation S235), and transmits the generated contentslist to the terminal 112 (Operation S240). The contents list can includeinformation regarding contents, such as the title, type, and identifierof the contents.

The terminal 112 that receives the contents list from the serviceprovision server 120 displays the contents list (Operation S245). Atthis time, the user A can select a desired item from the contents listusing the terminal 112 and request transmission of contentscorresponding to the selected item. Further, the user A can determineone of a streaming method and a download method as a contentstransmission method using the terminal 112.

If a contents transmission request is input from the user A (OperationS250), the terminal 112 generates a contents transmission requestmessage including an identifier of the contents (Operation S255) andtransmits the generated contents transmission request message to theservice provision server 120 (Operation S260). The contents transmissionrequest message that is generated at Operation S255 can also includeinformation regarding the contents transmission method determined by theuser A.

The service provision server 120 extracts the contents identifier fromthe contents transmission request message transmitted from the terminal112 and transmits contents to be identified by the extracted contentsidentifier to the terminal 112 (Operation S265). At Operation S265, themetadata of the contents can also be transmitted to the terminal 112. Asdescribed above, the metadata may be included in the contents or may betransmitted to the terminal 112 as a separate data object from thecontents.

At Operation S265, the content transmission method from the serviceprovision server 120 to the terminal 112 may be either the streamingmethod or the download method. What contents transmission method is tobe used may be set in the service provision server 120 in advance. Asdescribed above, if the contents transmission request messagetransmitted from the terminal 112 includes the information regarding thecontents transmission method, the contents transmission method may bedetermined at Operation S265 accordingly.

When the contents transmission method is the streaming method, a playmode of the terminal 112 becomes a streaming mode.

FIG. 3 is a flowchart showing a service management process according toan exemplary embodiment of the present invention. In this exemplaryembodiment, a case where the terminal 112 searches other terminals 114and 116 will be described. This can be understood that, the “user A” asthe user of the terminal 112 searches the “user B” and the “user C” asthe users of other terminals 114 and 116.

First, according to a request of the user A, the terminal 112 playscontents (Operation S310). The play mode of the terminal 112 may be thestreaming mode or the general mode.

If a terminal search request is input from the user A while the contentsis being played (Operation S315), the terminal 112 displays the type ofmetadata related to the type of the contents that is being played(Operation S320). For example, as shown in FIG. 4A, if a terminal searchrequest is input from the user A while the terminal 112 is playing moviecontents 410, the terminal 112 can display a metadata type selectionscreen 420 that shows the type of metadata (“genre”, “leading actor”, or“director”) related to the movie contents, as shown in FIG. 4B.

When the terminal search request is input, the terminal 112 cantemporarily stop playing of the contents, or can continue playing thecontents.

The user A can select one or more types of metadata as a searchreference among the types of metadata displayed by the terminal 112.

If the user A selects the type of metadata (Operation S325), theterminal 112 extracts a contents information element corresponding tothe type of metadata selected by the user A from metadata of thecontents that is being played (Operation S330). For example, if theterminal 112 is playing movie contents of “The Lord of the Rings” andthe user selects “director” among the types of metadata, at OperationS330, the terminal 112 can extract “Peter Jackson” as a contentsinformation element corresponding to the type “director” from metadataof the movie contents (“The Lord of the Rings”) that is being played.

Thereafter, the terminal 112 generates a terminal search request messageincluding the extracted contents information element (Operation S335)and transmits the generated terminal search request message to theservice provision server 120 (Operation S340).

The service provision server 120 that receives the terminal searchrequest message from the terminal 112 searches a terminal, which isplaying contents related to the contents information element included inthe terminal search request message, from other terminals 114 and 116connected thereto and collects positional information of the searchedterminal (Operation S345). Operation S345, at which a terminal issearched and positional information is collected, may vary according towhether the terminals 114 and 116 are receiving contents in thestreaming method. More specifically, the service provision server 120can judge whether or not the terminals 114 and 116 connected thereto arereceiving contents in the streaming method and can perform a process ofFIG. 5 or a process of FIG. 6 according to the judgment result. SinceOperation S345 can be performed on all of the terminals connected to theservice provision server 120, the service provision server 120 canperform the process of FIG. 5 and the process of FIG. 6 sequentially orin parallel according to the play mode of each of the terminalsconnected thereto. For convenience of explanation, it is assumed thatthe terminal 114 is receiving contents from the service provision server120 in the streaming method, whereas the terminal 116 is not receivingcontents in the streaming method. In this case, the terminal 114 may beplaying contents in the streaming mode, while the terminal 116 may notbe playing contents or may be playing contents in the general mode.

FIG. 5 is a flowchart showing a positional information collectionprocess according to an exemplary embodiment. This process is performedon the terminal 114 that is receiving contents in the streaming method.

The service provision server 120 extracts a contents information elementfrom the terminal search request message received at Operation S340 ofFIG. 3 (Operation S510). Next, the service provision server 120 judgeswhether the metadata of the contents that is being received by theterminal 114 in the streaming method matches with the contentsinformation element extracted at Operation S510 (Operation S520).

As the judgment result at Operation S520, if the contents informationelement extracted from the terminal search request message matches withthe metadata of the contents that is being transmitting to the terminal114 (more specifically, if the metadata includes the same contentsinformation element), the service provision server 120 collectspositional information of the terminal 114 (Operation S530).

However, as the judgment result at Operation S520, if the metadata ofthe contents that is being transmitted to the terminal 114 does notinclude the contents information element extracted at Operation S510,the positional information of the terminal 114 is not collected.

The process of FIG. 5 can be performed on all of the terminals that arereceiving contents from the service provision server 120 in thestreaming method when the terminal search request message is receivedfrom the terminal 112.

Meanwhile, the service provision server 120 can perform the process ofFIG. 6 on the terminal 116, which is not receiving contents in thestreaming method, among the terminals connected to the service provisionserver 120.

If the terminal search request message is received from the terminal 112(Operation S340 of FIG. 3), the service provision server 120 extractsthe contents information element from the terminal search requestmessage (Operation S610). Thereafter, the service provision server 120generates a metadata request message (Operation S620) and transmits thegenerated metadata request message to the terminal 116 (Operation S630).

If the terminal 116 receives the metadata request message while playingcontents, the terminal 116 generates a reply message including metadataof the contents that is being played (Operation S640) and transmits thegenerated reply message to the service provision server 120 (OperationS650).

If the reply message is received from the terminal 116, the serviceprovision server 120 extracts the metadata from the reply message(Operation S660) and compares the extracted metadata with the contentsinformation element extracted at Operation S610 (Operation S670).

As the comparison result at Operation S670, if the contents informationelement extracted at Operation S610 is included in the metadataextracted at Operation S660, the service provision server 120 collectspositional information of the terminal 116 (Operation S680). However, asthe comparison result at Operation S670, if the contents informationelement extracted at Operation S610 is not included in the metadataextracted at Operation S660, the positional information of the terminal116 is not collected.

Though not shown in FIG. 6, if the terminal 116 receives the metadatarequest message while not playing contents, Operation S640 can besubstituted with an operation of generating a reply message includinginformation that the terminal 116 is not playing contents. In this case,since the metadata is not included in the reply message, Operations S660to S680 of FIG. 6 cannot be performed.

Meanwhile, Operation S630 of FIG. 6 can be automatically performedwithout needing the involvement of the user C. For example, the user Cmay set the terminal 116 whether or not to reply to the metadata requestmessage of the service provision server 120. If the terminal 116 is setto reply the metadata request message, Operation S630 of FIG. 6 can beautomatically performed. If the terminal 116 is set not to reply to themetadata request message, Operation S630 of FIG. 6 can be substitutedwith an operation of generating a reply message including informationthat the metadata cannot be noticed.

Operation S630 can be performed with the involvement of the user C inreal time. For example, if the metadata request message is received fromthe service provision server 120, the terminal 116 can display thecontent of a request to decide whether to reply to the metadata requestmessage. At this time, the user C can decide whether to reply to therequest of the service provision server 120. If the user C decides toreply to the metadata request message, the terminal 116 can performOperation S630. However, if the user C decides not to reply to themetadata request message, Operation S630 of FIG. 6 can be substitutedwith an operation of generating a reply message including informationindicating that the metadata cannot be noticed. The involvement of theuser C can be previously set in the terminal 116 by the user C.

The process of FIG. 6 can be performed on all of the terminals, whichare connected to the service provision server 120 but are not receivingcontents in the streaming method when the terminal search requestmessage is received from the terminal 112.

Returning to FIG. 3, the service provision server 120 can map thecollected positional information to identification information of theterminal (for example, the identifier of the terminal and the ID of auser of the terminal) (Operation S350). Thereafter, the serviceprovision server 120 transmits the collected positional information tothe terminal 112 (Operation S355). At this time, the identificationinformation of the terminal mapped to the positional information atOperation S350 can also be transmitted to the terminal 112. Accordingly,the terminal 112 can notice the identification information of theterminal corresponding to the positional information. The terminal 112that receives the positional information from the service provisionserver 120 displays the received positional information (OperationS360). At Operation S360, the terminal 112 can display positionalinformation as a list or a table in a text format. However, the terminal112 may display the positional information as a map. For example, atOperation S355, the service provision server 120 can transmit anelectronic map including the positional information to the terminal 112.Further, the terminal 112 may receive an electronic map from the serviceprovision server 120 in advance and display the positional informationtransmitted at Operation S355 together with a previously acquiredelectronic map. The terminal 112 may acquire an electronic map through adifferent path in advance.

The positional information can include coordinate information based onthe electronic map. The positional information may include informationregarding latitude and longitude and convert the positional informationaccording to a coordinate system suitable for an electronic map providedin the terminal 112.

An example of the positional information that is displayed by theterminal 112 at Operation S360 is shown in FIG. 7. In FIG. 7, hatchedcircles 710 to 750 are spots that are indicated by the positionalinformation from the service provision server 120. These spots representthe positions of other terminals (for example, the terminal 114 and theterminal 116), which are playing contents related to the metadata of thecontents that the terminal 112 is playing. That is, the positionalinformation can represent the positions of other users (for example, theuser B and the user C) having similar taste to the user A. Accordingly,the user A can determine the presence/absence of other users havingsimilar taste and the positions of them. A map shown in FIG. 7 includesinformation 760 representing the position of the terminal 112, that is,the position of the user A. At Operation S360, the positionalinformation of the terminal 112 can be provided from the serviceprovision server 120 together with the positional information of otherterminals. When the terminal 112 has a function of managing its ownpositional information (for example, a GPS function), the terminal 112itself may provide its own positional information.

If the number of searched terminals is large, it is inefficient for theterminal 112 to display all positional information of the terminals.Accordingly, according to an exemplary embodiment, the number ofpositional information to be provided from the service provision server120 may be limited to the critical number of positional information.That is, when the number of positional information collected by theservice provision server 120 exceeds the critical number of positionalinformation, the service provision server 120 can select only positionalinformation that is as much as the critical number of positionalinformation and provide the selected positional information to theterminal 112. Here, the critical number of positional information may bepreviously set by an operator of the service provision server 120 or maybe directly set through the terminal 112 when the user A inputs theterminal search request. If the user A directly sets the critical numberof positional information, the set critical number of positionalinformation can be included in the terminal search request messagegenerated at Operation S335 of FIG. 3. Then, the service provisionserver 120 that receives the terminal search request message can providepositional information according to the critical number of positionalinformation. Moreover, the method that the service provision server 120selects the critical number of positional information among a pluralityof positional information is not intended to limit the presentinvention. The service provision server 120 may randomly selectpositional information among a plurality of positional information ormay select the required number of positional information in proportionto a distribution density of positional information according tosub-areas of an area to be handled by the service provision server 120.

The user A can select positional information to be displayed by theterminal 112 and perform communication with a user of a terminalcorresponding to the selected positional information. This will bedescribed with reference to FIG. 8.

If one of the positional information to be displayed through the processof FIG. 3 is selected by the user A (Operation S810), the terminal 112generates a communication request message to request communication witha terminal corresponding to the selected positional information(Operation S815) and transmits the generated communication requestmessage to the service provision server 120 (Operation S820). Thecommunication request message can include at least one of the positionalinformation selected at Operation S810 and the identificationinformation regarding the terminal corresponding to the selectedpositional information. Information included in the communicationrequest message allows the service provision server 120 to notice whichterminal the terminal 112 wants to communicate with. Accordingly, anyinformation that corresponds to this end may be included in thecommunication request message. Further, the communication requestmessage may also include the identification information of the terminal112 (for example, the identifier of the terminal 112 or the ID of theuser A).

The service provision server 120 judges, on the basis of thecommunication request message received from the terminal 112, whichterminal the terminal 112 wants to communicate with (Operation S825). Asthe judgment result at Operation S825, it is assumed that the terminal114 is confirmed as a communication party of the terminal 112.

The service provision server 120 generates an acceptance/rejectionconfirmation message including the identification information of theterminal 112 (Operation S830) and transmits the generatedacceptance/rejection confirmation message to the terminal 114 (OperationS835).

If the acceptance/rejection confirmation message is received from theservice provision server 120, the terminal 114 displays informationindicating that the terminal 112 requests communication (OperationS840). At Operation S840, the identification information of the terminal112 that requests the communication may also be displayed.

The user B can confirm information displayed by the terminal 114 anddetermine whether to accept the communication request of the terminal112. If the information that the communication request of the terminal112 is accepted is input from the user B (Operation S845), the terminal114 generates a communication acceptance message (Operation S850) andtransmits the generated communication acceptance message to the serviceprovision server 120 (Operation S855).

At this time, the service provision server 120 generates a reply messageincluding information that the communication with the terminal 114 canbe performed (Operation S860) and transmits the generated reply messageto the terminal 112 (Operation S865).

Thereafter, the service provision server 120 relays communicationbetween the terminal 112 and the terminal 114 (Operation S870).

Accordingly, a communication service can be provided between theterminal 112 and the terminal 114. That is, the user A can use thecommunication service with the user B having similar taste. Examples ofthe communication service include an Instant Messenger (IM) service, anShort Message Service (SMS), a voice call, and an image call. However,the communication service is not limited thereto. FIG. 9 shows anexample of a screen that is displayed by the terminal 112 when theterminal 112 uses an IM service with the terminal 114. Though not shownin FIG. 8, if information that the user B rejects communication is inputat Operation S845, the terminal 114 can generate a communicationrejection message and then transmit the generated communicationrejection message to the service provision server 120. At this time, theservice provision server 120 can generate a reply message includinginformation that the communication is rejected and transmit thegenerated reply message to the terminal 112. In this case, thecommunication service is not provided between the terminal 112 and theterminal 114.

According to the request of the user A, the terminal 112 can store thepositional information of the terminal 114 that has performed thecommunication with the terminal 112. Then, if the user A requestsafterwards, the terminal 112 can display the stored positionalinformation again. Accordingly, the user A can find the user B havingsimilar taste in the use of contents on a map. As time elapses, theactual position of the user B may not be consistent with the positionalinformation displayed by the terminal 112 again. However, since theradius of action of people is generally limited, it is not difficult forthe user A to confirm the position of the user B on the map. Further,since the identification information of the terminal 114 that is mappedto the positional information may also be stored together with thepositional information, the terminal 112 can reuse the communicationservice with the terminal 114. According to the exemplary embodiments,when the terminal 112 reuses the communication service with the terminal114, the service provision server 120 may provide new positionalinformation of the terminal 114 to the terminal 112. In this case, theterminal 112 can store the new positional information of the terminal114. This can be similarly applied to the terminal 114 that hasperformed the communication with the terminal 112.

In FIGS. 1 to 9, the service system that has a single service provisionserver 120 has been described. However, a physical area that the singleservice provision server 120 can provide a service to the terminals maybe limited. Accordingly, a service provision server may be provided foreach area and a relay server that can connect the individual serviceprovision servers to each other may be provided, such that a serviceprovision area can be expanded. This will be described with reference toFIG. 10.

FIG. 10 is a diagram showing a service system according to an exemplaryembodiment. FIG. 10 shows a service system that has two serviceprovision servers 1020 and 1030 and a relay server 1040, which connectsthe service provision servers 1020 and 1030 to each other.Alternatively, three or more service provision servers may be provided.The service provision servers 1020 and 1030 handle a first local areaand a second local area, respectively. It should be understood thatnetworks 20, 30, 40, and 50 shown in FIG. 10 are the same as the network10 shown in FIG. 1. Terminals 1011, 1012, and 1013 in the first localarea can be connected to the first service provision server 1020 toreceive a service, and terminals 1014, 1015, and 1016 in the secondlocal area can be connected to the second service provision server 1030to receive a service. This construction is a service environment thatprovides a service between cities, localities, and countries. It shouldbe understood that the construction of the first local area or thesecond local area is the same as the service system shown in FIG. 1. Inthis exemplary embodiment, the service area is not limited to the samelocal area but can be expanded to another local area. This will bedescribed in detail with reference to FIG. 11.

FIG. 11 is a flowchart showing a service provision process according toan exemplary embodiment, which will be described with respect to theterminal 1011.

According to the user's request, the terminal 1011 can play contents(Operation S1101). The play mode of the terminal 1011 may be thestreaming mode or the general mode.

If a terminal search request is input from the user while the contentsis being played (Operation S1102), the terminal 1011 displays a searcharea selection screen (Operation S1103). For example, as shown in FIG.12A, when the terminal search request of the user is input while thecontents is being played, the terminal 1011 can display a search areaselection screen shown in FIG. 12B. As shown in FIG. 12B, a search areacan include a local area and a global area. Here, the global areaincludes a plurality of local areas. In the service system shown in FIG.10, the global area includes the first local area and the second localarea.

The user can select either the global area or the local area. If theuser selects the search area (Operation S1104), the terminal 1011displays the type of metadata related to the contents that is beingplayed (Operation S1105).

The user can select the type of metadata as a search reference among thetypes of metadata that are displayed by the terminal 1011. If the userselects the type of metadata (Operation S1106), the terminal 1011extracts a contents information element corresponding to the type ofmetadata selected by the user from the metadata of the contents that isbeing played (Operation S1107). It should be understood that OperationsS1105 to S1107 of FIG. 11 are substantially the same as Operation S320to S330 of FIG. 3.

Thereafter, the terminal 1011 generates a terminal search requestmessage including information regarding the search area selected atOperation S1104 (hereinafter, referred to as “search area information”)and the contents information element extracted at Operation S1107(Operation S1108), and transmits the generated terminal search requestmessage to the first service provision server 1020 (Operation S1109).

The first service provision server 1020 that receives the terminalsearch request message from the terminal 1011 judges, on the basis ofthe search area information included in the terminal search requestmessage, which of the local area and the global area a service isprovided to (Operation S1110). If the search area information representsthe local area, a terminal search process is performed on the firstlocal area that is handled by the first service provision server 1020.This processing is the substantially same as described with reference toFIGS. 3 to 5. Accordingly, description of an operation when the searcharea is set to the local area will be omitted.

As the judgment result at Operation S1110, if the search areainformation included in the terminal search request message representsthe global area, the first service provision server 1020 transmits theterminal search request message to the relay server 1040 (OperationS1111). At this time, the terminal search request message to betransmitted may be received from the terminal 1011 or newly generated bythe first service provision server 1020.

When receiving the terminal search request message transmitted from thefirst service provision server 1020, the relay server 1040 relays theterminal search request message to the second service provision server1030 (Operation S1112).

The second service provision server 1030 searches a terminal, which isplaying contents related to the contents information element included inthe terminal search request message, among the terminals 1014, 1015, and1016 connected thereto in the second local area, and collects positionalinformation of the searched terminal (Operation S1113). It should beunderstood that Operation S1113 is substantially the same as describedwith reference to FIGS. 4 and 5.

The second service provision server 1030 can map the collectedpositional information to identification information of thecorresponding terminal (Operation S1114). Thereafter, the second serviceprovision server 1030 generates a reply message including the collectedpositional information (Operation S1115) and transmits the generatedreply message to the relay server 1040 (Operation S1116). The replymessage that is generated at Operation S1115 can include theidentification information of the terminal mapped to the positionalinformation.

The relay server 1040 relays the user search reply message received fromthe second service provision server 1030 to the first service provisionserver 1020 (Operation S1117).

The first service provision server 1020 searches a terminal, which isplaying contents related to contents information element included in theterminal search request message, from the terminals 1012 and 1013connected thereto in the first local area, and collects positionalinformation of the searched terminal (Operation S1118). It should beunderstood that Operation S1118 is substantially the same as describedwith reference to FIGS. 5 and 6.

The first service provision server 1020 can map the collected positionalinformation to identification information of the corresponding terminal(Operation S1119).

Thereafter, the first service provision server 1020 extracts thepositional information from the reply message transmitted from the relayserver 1040 (Operation S1120) and transmits the collected positionalinformation and the positional information extracted at Operation S1120to the terminal 1011 (Operation S1121). At Operation S1121, theidentification information of the terminal mapped to the positionalinformation may also be transmitted together with the positionalinformation.

The terminal 1011 that receives the positional information from thefirst service provision server 1020 displays the received positionalinformation (Operation S1122). It should be understood that OperationS1122 is substantially the same as Operation S360 of FIG. 3. Since thepositions of the terminals are searched in the global area, if thepositional information is displayed in a map format at Operation S1122,a map displayed at Operation S1122 can include the first local area andthe second local area.

FIG. 13A shows an example of positional information displayed atOperation S1122 according to an exemplary embodiment, but is not limitedto this example. For example, positional information may be displayed onthe basis of each local area. That is, at Operation S1122 of FIG. 11, inrespect to the positional information, the search result of the firstlocal area and the search result of the second local area can bedisplayed alternately according to the user's request. This isexemplified in FIG. 13B. In this case, when the user selects “next localarea”, the terminal 1011 that is displaying the first local area 1320can display the second local area 1330. The reverse processing can alsobe performed.

At Operation S1117 of FIG. 11, the relay server 1040 can temporarilystore the positional information transmitted from the second serviceprovision server 1030. If a terminal search request message includingthe same contents information element as that transmitted at OperationS1111 is received from the first service provision server 1020 before acritical time elapses from when the positional information istemporarily stored, the temporarily stored positional information can betransmitted to the first service provision server 1020. This is because,when the same request is received within a predetermined time, thesubstantially same effect can be obtained even if the previousprocessing result is provided without repeating the same processing. Inthis case, the relay server 1040 may not transmit the terminal searchrequest message to the second service provision server 1030. With thisprocessing, the processing time and load of the relay server 1040 can bereduced. This can be similarly applied to the first service provisionserver 1020. That is, the first service provision server 1020 maytemporarily store the positional information that is transmitted to theterminal 1011 at Operation S1121 of FIG. 11 and, if the same terminalsearch request message as that transmitted from the terminal 1011 atOperation S1109 within a critical time from when the positionalinformation is temporarily stored, may provide the temporarily storedpositional information to the terminal 1011.

Hereinafter, the configuration of the terminals 112, 114, 116, 1011,1012, 1013, 1014, 1015, or 1015, the configuration of the serviceprovision servers 120, 1020, or 1030, and the configuration of the relayserver 1040 will be described. The operations between them can beunderstood in detail with reference to FIGS. 1 to 12.

FIG. 14 is a diagram showing the configuration of the service provisionserver 1400 according to an exemplary embodiment. The service provisionserver 1400 has the same configuration as the service provision servers120, 1020, and 1030 shown in FIGS. 1 and 10.

The service provision server 1400 includes a contents management device1410, a connection management device 1420, a positional informationmanagement device 1430, a service processing device 1440, and acommunication relay device 1450.

When receiving a contents request message from the terminal, thecontents management device 1410 can provide the requested contents. Acontents provision method may be a streaming method or a downloadmethod. Accordingly, the contents management device 1410 can confirmwhich terminal is receiving contents in the streaming method. Further,when receiving the contents search request message, the contentsmanagement device 1410 can search contents corresponding to the searchkeyword included in the contents search request message and create alist of the searched contents. To this end, the contents managementdevice 1410 can store a plurality of contents and metadata of thecontents. The contents management device 1410 may access an externalcontents provider and search and receive required contents and metadata.

The connection management device 1420 performs an authenticationprocessing of the terminal that requests connection. To this end, theconnection management device 1420 can receive predetermined registrationinformation from the terminal, register the registration information,and, if authentication information is received from the terminalafterwards, compare the authentication information with the registrationinformation to determine whether or not to admit the connection of theterminal. Further, the connection management device 1420 manages a listof terminals, which are currently connected to the service provisionserver 1400, and updates the list whenever connection/disconnection.

The positional information management device 1430 manages positionalinformation of the terminals that are being connected to the serviceprovision server 1400. As an example to manage the positionalinformation of the terminal, the positional information managementdevice 1430 can include at least one of a home location register and avisited location register. This is just illustrative. An additionaldevice (for example, a GPS processing device) that can acquire thepositional information of the terminal can be provided. The positionalinformation management device 1430 may also manage an electronic mapthat is to be provided to the terminal.

As another example, the positional information management device 1430may receive the positional information of the terminal regularly orirregularly from the terminal connected to the service provision server1400 and manage the received positional information. For example but notby way of limitation, if the terminal connected to the service provisionserver 1400 transmits its own positional information to the serviceprovision server 1400, the positional information management device 1430can store and manage the transmitted positional information.Alternatively, the positional information management device 1430 mayinquire of the terminal connected to the service provision server 1400the positional information and acquire the positional information of theterminal from the terminal.

The service processing device 1440 serves as a gate for communicationwith the terminal or the relay server 1040. Further, the serviceprocessing device 1440 instructs the individual devices 1410, 1420, and1430 of the service provision server 1400 to perform the requiredoperations to provide a required service to the terminal. To this end,the service processing device 1440 can generate or analyze variousmessages required for communication with the terminal or the relayserver. The message refers to an information transfer medium for variousrequests or replies, and it should not be limited to only the meaning ofthe term “message” itself. For example, the term “message” can besubstituted with “frame” or “packet”, or other term as would beunderstood by one skilled in the art.

The communication relay device 1450 relays communication between theterminals. Here, the communication can include an IM service, an SMS, avoice call, and an image call. To support various communicationservices, the communication relay device 1450 can include a plurality ofcommunication service processing devices (not shown). For example, thecommunication relay device 1450 can include a short message processingdevice, an exchange, and the like.

FIG. 15 is a diagram showing the configuration of the relay server 1040according to an exemplary embodiment. The relay server 1040 includes aproxy device 1510 that delivers a message to be transmitted from theservice provision server to a different service provision server, and amanagement device 1520 that stores positional information transmittedfrom the service provision server. The management device 1520 may deletethe stored positional information when a predetermined time elapses.Further, when the same terminal search request message is received froma specified service provision server again, the management device 1520determines whether to reuse the temporarily stored positionalinformation. For example, if a first terminal search request message isreceived from the first service provision server 1020, the proxy device1510 transmits the received first terminal search request message to thesecond service provision server 1030. Thereafter, if a reply messageincluding positional information is received from the second serviceprovision server 1030, the proxy device 1510 transmits the receivedreply message to the first service provision server 1020. At this time,the management device 1520 can store the positional information includedin the reply message. If a second terminal search request messageincluding the same contents information element as the first terminalsearch request message is received from the first service provisionserver 1020 before a critical time elapses from when the positionalinformation is stored, the management device 1520 can transmit thestored positional information to the first service provision server1020. At this time, the management device 1520 can control the proxydevice 1510 not to transmit the second terminal search request messageto the second service provision server 1030.

FIG. 16 is a diagram showing the configuration of a terminal 1600according to an exemplary embodiment. The terminals 112, 114, 116, 1011,1012, 1013, 1014, 1015, and 1016 shown in FIGS. 1 and 10 may have thesubstantially same configuration as the terminal 1600 shown in FIG. 16.

The terminal 1600 includes a network interface unit 1610, a user inputunit 1620, a play unit 1630, a storage unit 1640, a user interfaceproviding unit 1650, a communication service processing unit 1660, and acontrol unit 1670.

The network interface unit 1610 performs communication with the serviceprovision server 1400. That is, the network interface unit 1610transmits and receives various messages, contents, positionalinformation, and other data or information described with reference toFIGS. 1 to 12. The network interface unit 1610 can use a protocol basedon CDMA, WCDMA, or GSM; however, the present invention is not limitedthereto. For example, the network interface unit 1610 may use acommunication protocol based on the IEEE 802.11 standard or the IEEE802.15.3 standard or other different communication protocols.

The user input unit 1620 receives various requests or commands from theuser. To this end, the user input unit 1620 can include an input unit,such as a keypad, a touch pad, or a touch screen. The play unit 1630plays various contents or a map including positional information. Theplay unit 1630 can include various kinds of codec or applicationprocessing units in order to play the contents or the map. For example,the play unit 1630 can include a video decoder based on moving picturedecoding technology, such as Moving Picture Experts Group 2 (MPEG2),MPEG4, or H.264, or an audio decoder based on audio decoding technology,such as MPEG Audio Layer-3 (MP3) or Window Media Audio (WMA).

The storage unit 1640 stores contents, positional information, and otherdata. The storage unit 1640 can include various kinds of memories, suchas a hard disk, a flash memory, a Read Only Memory (ROM), and a RandomAccess Memory (RAM).

The user interface providing unit 1650 provides various kinds of userinterfaces in order to guide the use of the service. For example, theuser interface providing unit 1650 can provide a metadata type selectionscreen shown in FIG. 4B, a search area selection screen shown in FIG.12B, and the like.

The communication service processing unit 1660 supports various kinds ofcommunication services, such as an IM service, an SMS, a voice call, andan image call.

The control unit 1670 controls the operations of the componentsconstituting the terminal 1600. Further, the control unit 1670 cangenerate various kinds of messages to be transmitted to the serviceprovision server 1400 and analyze various kinds of messages to bereceived from the service provision server 1400.

In addition, though not specifically described in the description of theterminal 1600 with reference to FIG. 16, the control unit 1670 canperform a processing necessary for providing the service with referenceto FIG. 1 to FIG. 13B.

Though not shown, the terminal 1600 may further include a positionalinformation management unit that manages its own positional information.According to an exemplary embodiment, the positional informationmanagement unit may include a GPS processing unit that receives andstores the positional information of the terminal 1600 through a GPSsatellite.

The individual components of the terminal 1600 that has been describedwith reference to FIG. 16 can be implemented by a module. The term“module”, as used herein, means, but is not limited to, a software orhardware component, such as a Field Programmable Gate Array (FPGA) orApplication Specific Integrated Circuit (ASIC), which performs certaintasks. A module may be configured to reside on the addressable storagemedium and configured to be executed on one or more processors. Thus, amodule may include, by way of example, components, such as softwarecomponents, object-oriented software components, class components andtask components, processes, functions, attributes, procedures,subroutines, segments of program code, drivers, firmware, microcode,circuitry, data, databases, data structures, tables, arrays, andvariables. The functionality provided for in the components and modulesmay be combined into fewer components and modules or further separatedinto additional components and modules. Although the present inventionhas been described in connection with the exemplary embodiments of thepresent invention, it will be apparent to those skilled in the art thatvarious modifications and changes may be made thereto without departingfrom the scope and spirit of the invention. Therefore, it should beunderstood that the above embodiments are not limitative, butillustrative in all aspects.

According to the service provision method for user search, and theapparatus, the server, and the system for the same of the presentinvention, it is possible to provide a service that can search users,who use similar contents, in real time and allows information exchangewith the searched users.

1. A service provision server comprising: a contents management deviceconfigured to provide a first content requested from a first terminal;and a service processing device configured to provide a search resultthat identifies a second terminal reproducing a second content relatedto the first content in response to a search request to search foranother terminal reproducing content related to the first content. 2.The service provision server of claim 1, wherein the first terminaltransmits the search request while reproducing the first content.
 3. Theservice provision server of claim 1, wherein the search requestcomprises a contents information element included in metadata of thefirst content.
 4. The service provision server of claim 3, wherein thecontents management device searches at least one terminal that isreceiving contents having metadata including the contents informationelement in a streaming method.
 5. The service provision server of claim3, wherein the contents management device searches at least one terminalwhich transmits reply message including the contents informationelement.
 6. The service provision server of claim 1, further comprisinga communication relay device configured to relay a communication servicebetween the first terminal and the second terminal.
 7. The serviceprovision server of claim 6, wherein the communication service is one ofan instant messenger (IM) service, a short message service (SMS), avoice call, and an image call.
 8. A service provision method comprising:providing a first content requested from a first terminal; and providinga search result that identifies a second terminal reproducing a secondcontent related to the first content in response to a search request tosearch for another terminal reproducing content related to the firstcontent.
 9. The service provision method of claim 8, wherein the firstterminal transmits the search request while reproducing the firstcontent.
 10. The service provision method of claim 8, wherein the searchrequest comprises a contents information element included in metadata ofthe first content.
 11. The service provision method of claim 10, furthercomprising: searching at least one terminal that is receiving contentshaving metadata including the contents information element in astreaming method.
 12. The service provision method of claim 10, furthercomprising: searching at least one terminal which transmits replymessage including the contents information element.
 13. The serviceprovision method of claim 8, further comprising: relaying acommunication service between the first terminal and the secondterminal.
 14. The service provision method of claim 13, wherein thecommunication service is one of an instant messenger (IM) service, ashort message service (SMS), a voice call, and an image call.